package com.ahrhyj.common.annotation;

import com.ahrhyj.common.enums.CacheKeyConstants;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 自定义注解,对于查询使用缓存的方法加入该注解
 * <p/>
 *
 * @author <a href="mailto:durbao@126.com">durbao</a>
 * @version  Date: 2018年4月23日 下午8:17:59
 * @serial 1.0
 * @since 2018年4月23日 下午8:17:59
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
public @interface Cacheable {
    public abstract String key();
    CacheKeyConstants prefix() default CacheKeyConstants.SYS_USER_DATA;
    int timeOut() default 30 * 24 * 60 * 60;
}
